<!doctype linuxdoc system>
 
<article>
 
<!-- added this title -->
<title> Information for W32 Chipset Users
<author> Glenn G. Lai <it>&lt;glenn@cs.utexas.edu&gt;</it>,
Dirk H. Hohndel <it>&lt;hohndel@XFree86.Org&gt;</it>
<date>November 13, 1995
<toc>
 
<!-- added this section name -->
<sect> Information for W32 Chipset Users <p>
<tt>XF86_W32</tt> is basically <tt>XF86_SVGA</tt> with the drawing code
completely replaced with one based on X11R6's <tt>mi/cfb</tt> code and
modified for the ET4000/W32 series.  Even
though it accepts the same keywords as <tt>XF86_SVGA</tt>,
those not applicable to the ET4000/W32 series are silently ignored;
e.g., the keyword "SpeedUp" is a no-op.
The server currently supports the w32, w32i, and w32p chips.  For
a complete list, see the sign-on message printed by <tt>XF86_W32</tt>.
The server only supports 256 colors.

Just as with <tt>XF86_SVGA</tt>, you can specify a virtual world that has
a width that is a multiple of four.
The size of the virtual world is constrained by the
amount of the available video RAM.  <tt>XF86_W32</tt> can use more
than 1 M of video RAM, but it reserves 1 K for internal use.
If you have 1 M, <tt>XF86_W32</tt> claims
you have 1023 K; you get to specify the virtual world as 1152x900,
but not 1152x910.

For most cards the maximum clock is set to 86 MHz according to the Tseng
databooks.  For a non-interlaced 1280x1024x(256 colors) at say
135-MHz, you need a w32p (with its 16-bit RAMDAC bus) with a
multiplexing RAMDAC so that the w32p sees only (135/2 = 67.5) MHz,
not 135 MHz.  This requires special code only provided for
cards using the ICS5341 GENDAC or the STG1703. This code seems to work 
fine for most people, except, with the ICS5341, for a small band of 
frequencies around 90MHz.

If you have problems with the server.  Try the following:
<itemize>
<item>  Put Option "pci_burst_off" in the Device Section.
<item>  Put Option "w32_interleave_off" in the Device Section.
<item>  Take out the Hercules monochrome adapter, if you have one.  Many 
    configurations of the ET4000/W32 series do not allow one in the
    system.
<item> Get a motherboard with its local bus running at 33 MHz.  Many, if not
    all, ET4000/W32 boards will surely behave in a funny way on a 50-MHz
    bus.  You may have to use a wait state or two, but first try without
    any.
<item> Cold-boot your machine.  Do not run anything that messes with the
    video hardware, including other X servers, before running
    <tt>XF86_W32</tt>.	
<item>
     Try XF86_SVGA.  If it works, put the following in your XF86Config:

<tscreen><verb>
Ramdac "generic"
</verb></tscreen>

</itemize>
Note that the built-in power saver (for a "green" monitor) has not been
tested.  Also do not expect it to work on a board without a w32p_rev_c or
later chip.

<sect> Using XF86_W32 on a board with an ICS5341 GENDAC <p>
Even though the GENDAC provides a set of standard clocks that can be found
with the normal clock probing procedure, it is mandatory to put a
<tscreen><verb>
ClockChip  "ics5341"
</verb></tscreen>
line into the Device Section to be able to use the programmable clocks that
the ICS5341 can produce. You can also add a
<tscreen><verb>
Ramdac     "ics5341"
</verb></tscreen>
line, but the RAMDAC should be auto-probed correctly.  Even though the
server currently accepts any dot clock up to 135MHz with the ICS5341 GENDAC,
most boards show a small band of clock values in the area between 86MHz and
about 100MHz that don't work. This are usually is just a few MHz wide, higher
clocks as well as lower clocks work just fine. I'm working on it. (DHH)

<sect> Using XF86_W32 on a board with an STG1703 GENDAC <p>
Even though the STG1703 provides a set of standard clocks that can be found
with the normal clock probing procedure, it is mandatory to put a
<tscreen><verb>
ClockChip  "stg1703"
</verb></tscreen>
line into the Device Section to be able to use the programmable clocks that
the STG1703 can produce. You can also add a
<tscreen><verb>
Ramdac     "stg1703"
</verb></tscreen>
line, but the RAMDAC should be auto-probed correctly. 

<sect> Acknowledgments <p>
Jerry J. Shekhel (<it>jerry@msi.com</it>) gave me (GGL) the 1-M Mirage
ET4000/W32 VLB board on which the initial development (X_W32) was done.

X11R6 and The XFree86 Project provide the base code for XF86_W32. 

Hercules Computer Technology Inc. lent me (GGL) a 2-M Hercules Dynamite Pro VLB
board for the development that led to <tt>XF86_W32</tt>.   They donated a
Dynamite Power PCI to The XFree86 Project, that was used by DHH to extend
the server.

Koen Gadeyne (<it>kmg@barco.be</it>) wrote a patchkit for XFree86-3.1.1 that
was partly integrated in this server and he continues to help develop it.

Numerous testers have given me feedback for <tt>X_W32</tt> and later
<tt>XF86_W32</tt>.  I
apologize for my failure to keep track of the people who tested
<tt>X_W32</tt>, but
the names of the people involved with the <tt>XF86_W32</tt> testing are
listed below:
<descrip>
<tag>Linux:</tag>
<it>bf11620@coewl.cen.uiuc.edu</it> (Byron Thomas Faber) <newline>
<it>dlj0@chern.math.lehigh.edu</it> (David Johnson) <newline>
<it>peterc@a3.ph.man.ac.uk</it> (Peter Chang)  <newline>
<it>dmm0t@rincewind.mech.virginia.edu</it> (David Meyer) <newline>
<it>nrh@philabs.Philips.COM</it> (Nikolaus R. Haus) <newline>
<it>jdooley@dbp.caltech.edu</it> (James Dooley) <newline>
<it>thumper@hitchcock.eng.uiowa.edu</it> (Timothy Paul Schlie) <newline>
<it>klatta@pkdla5.syntex.com</it> (Ken Latta) <newline>
<it>robinson@cnj.digex.net</it> (Andrew Robinson) <newline>
<it>reggie@phys.washington.edu</it> (Reginald S. Perry) <newline>
<it>sjm@cs.tut.fi</it> (M{kinen Sami J) <newline>
<it>engel@yacc.central.de</it> (C. Engelmann) <bf>use</bf>
	<it>cengelm@gwdg.de</it> <newline>
<it>postgate@cafe.net</it> (Richard Postgate) <newline>
<it>are1@cec.wustl.edu</it> (Andy Ellsworth) <newline>
<it>bill@celtech.com</it> (Bill Foster)
<tag> FreeBSD: </tag>
<it>ljo@ljo-slip.DIALIN.CWRU.Edu</it> (L Jonas Olsson)
</descrip>

<!-- moved author name to title page. -->

<verb>
$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/W32.sgml,v 3.9 1995/12/16 08:20:34 dawes Exp $





$XConsortium: W32.sgml /main/9 1996/01/07 18:54:35 kaleb $
</verb>

</article>
